#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
typedef struct cus
{
	int h;
	int min;
	int money;
}cus;

void Swap(cus* a, cus* b)
{
	cus tmp = *a;
	*a = *b;
	*b = tmp;
}
void Bubble(cus* data, int n)
{
	int i, j;
	for (i = 1; i < n; i++)
	{
		for (j = 0; j < n - i; j++)
		{
			if (data[j].money < data[j + 1].money)
				Swap(&data[j], &data[j + 1]);
			else if (data[j].money == data[j + 1].money && data[j].h > data[j + 1].h)
				Swap(&data[j], &data[j + 1]);
			else if (data[j].money == data[j + 1].money && data[j].h == data[j + 1].h && data[j].min > data[j + 1].min)
				Swap(&data[j], &data[j + 1]);
		}
	}
}

int main()
{
	int n, m;
	scanf("%d%d", &n, &m);
	cus data[2001];
	for (int i = 0; i < n; i++)
		scanf("%d%d%d", &data[i].h, &data[i].min, &data[i].money);
	Bubble(data, n);
	for (int i = 0; i < m; i++)
		printf("%d %d %d\n", data[i].h, data[i].min, data[i].money);
	return 0;
}